<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>03_基本使用</title>
</head>

<body>
    <div id="app">
        <cpn></cpn>
        <cpn>
            <i>iiiii</i>
            <h3>h3h3h3h3</h3>
        </cpn>
        <cpn><span>spanspan...</span></cpn>
        <cpn></cpn>
        <cpn></cpn>
    </div>
</body>
<script src="../vue.js"></script>

<template id="cpn">
    <div>
        <h3>我是h3标题</h3>
        <p>我是p段落内容...</p>
        <!-- 这个组件会在多个地方重复使用,有的时候我们想在组件里插入一些不一样的结构以及内容,比如:下面的button标签,其实我们希望在有的地方显示button
            有的显示其它 dom 结构,如果直接在这里写死,那就不灵活了,于是有了插槽(slot):
            1.其实可以把它理解为一个占位符,先把这个位置占着,然后在引用它的地方,你想插入什么就插入什么(把一样的内容放到组件,不一样的预留成插槽即可);
            2.slot里如果写了内容,当在组件里引用没有往插槽里插入内容时,就会默认取 slot 里的内容,否则反之.
        -->
        <!-- <button>按钮</button> -->
        <slot>
            <button>按钮</button>
        </slot>
    </div>
</template>

<script>
    const vm = new Vue({
        el: '#app',
        components: {
            cpn: {
                template: '#cpn'
            }
        }
    })
</script>

</html>